﻿using PLCS.Application.Contracts.HisTaskApp.Dtos;
using PLCS.Application.Contracts.TaskApp.Dtos;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace PLCS.Application.Contracts.TaskApp
{
    public interface IInstructionAppService : ICrudAppService<InstructionDto, Guid, PagedResultRequestDto, InstructionEditDto>
    {
        Task AgainIssuedAsync(Guid Id);

        Task ChangeStatusAsync(Guid Id, Domain.Shared.Tasks.InstructionStatus taskStatus);

        Task FinshTaskAsync(Guid Id);

        Task<PagedResultDto<InstructionDto>> GetListBySearchAsync(PagedResultRequestDto input, string? instructionNo, string? equipmentNo, string? status);
    }
}